Description
Implement
Customer.getOrderedProducts()
andShop.getAllOrderedProducts()
using flatMap.
flatMap を使用して、
Customer.getOrderedProducts()
およびShop.getAllOrderedProducts()
を実装してください。
val result = listOf("abc", "12").flatMap { it.toCharList() }
result == listOf('a', 'b', 'c', '1', '2')
Code
// Return all products this customer has ordered
val Customer.orderedProducts: Set<Product> get() {
return orders.flatMap { it.products }.toSet()
}
// Return all products that were ordered by at least one customer
val Shop.allOrderedProducts: Set<Product> get() {
return customers.flatMap { it.orderedProducts }.toSet()
}
Memo
flatMap
... 元の配列の各要素に対してラムダ内の処理を適用して生成された、全要素の単一のリストを返す